home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / C / hf^k-2.dms / in.adf / MUIClass.Lha / Include / Classes / TWiMUI / Slider.h < prev    next >
Encoding:
C/C++ Source or Header  |  1996-09-06  |  2.2 KB  |  95 lines

  1. //
  2. //  $VER: Slider.h      1.2 (02 Sep 1996)
  3. //
  4. //    c 1996 Thomas Wilhelmi
  5. //
  6. //
  7. // Address : Taunusstrasse 14
  8. //           61138 Niederdorfelden
  9. //           Germany
  10. //
  11. //  E-Mail : willi@twi.rhein-main.de
  12. //
  13. //   Phone : +49 (0)6101 531060
  14. //   Fax   : +49 (0)6101 531061
  15. //
  16. //
  17. //  $HISTORY:
  18. //
  19. //  16 Jun 1996 :   1.0 : first public Release
  20. //
  21. //  02 Sep 1996 :   1.2 : Neu:
  22. //                        - ClassNum() für Exception-Handling.
  23. //                        Änderungen
  24. //                        - Parameter des Copy-Konstruktor als 'const'-Parameter definiert
  25. //
  26.  
  27. #ifndef CPP_TWIMUI_SLIDER_H
  28. #define CPP_TWIMUI_SLIDER_H
  29.  
  30. #ifndef CPP_TWIMUI_NUMERIC_H
  31. #include <classes/twimui/numeric.h>
  32. #endif
  33.  
  34. #ifndef CPP_TWIMUI_LABEL_H
  35. #include <classes/twimui/label.h>
  36. #endif
  37.  
  38. class MUISlider : public MUINumeric
  39.     {
  40.     protected:
  41.         virtual const ULONG ClassNum() const;
  42.     public:
  43.         MUISlider(const struct TagItem *t)
  44.             :   MUINumeric(MUIC_Slider)
  45.             {
  46.             init(t);
  47.             };
  48.         MUISlider(const Tag, ...);
  49.         MUISlider(const LONG min, const LONG max)
  50.             :   MUINumeric(MUIC_Slider)
  51.             {
  52.             init(MUIA_Numeric_Min, min,
  53.                 MUIA_Numeric_Max, max,
  54.                 TAG_DONE);
  55.             };
  56.         MUISlider(const LONG min, const LONG max, const UBYTE cc)
  57.             :   MUINumeric(MUIC_Slider)
  58.             {
  59.             init(MUIA_Numeric_Min, min,
  60.                 MUIA_Numeric_Max, max,
  61.                 MUIA_ControlChar, cc,
  62.                 TAG_DONE);
  63.             };
  64.         MUISlider() : MUINumeric(MUIC_Slider) { };
  65.         MUISlider(const MUISlider &);
  66.         virtual ~MUISlider();
  67.         MUISlider &operator= (const MUISlider &);
  68.         void Horiz(const BOOL p) { set(MUIA_Slider_Horiz,(ULONG)p); };
  69.         BOOL Horiz() const { return((BOOL)get(MUIA_Slider_Horiz,FALSE)); };
  70.     };
  71.  
  72. class MUILabSlider
  73.     :   public MUILabelHelp,
  74.         public MUISlider
  75.     {
  76.     private:
  77.         MUIKeyLabel2 MUILab;
  78.     public:
  79.         MUILabSlider(const STRPTR lab, const LONG min, const LONG max)
  80.             :   MUILabelHelp(lab),
  81.                 MUISlider(min,max,MUILabelHelp::gCC()),
  82.                 MUILab(MUILabelHelp::gLab(),MUILabelHelp::gCC())
  83.             { };
  84.         MUILabSlider(const MUILabSlider &p)
  85.             :   MUILabelHelp((MUILabelHelp &)p),
  86.                 MUISlider((MUISlider &)p),
  87.                 MUILab(p.MUILab)
  88.             { };
  89.         virtual ~MUILabSlider();
  90.         MUILabSlider &operator= (const MUILabSlider &);
  91.         Object *label() { return(MUILab); };
  92.     };
  93.  
  94. #endif
  95.